package com.jeesite.modules.dataScreen.service;

import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jeesite.modules.dataScreen.entity.SysUser;
import com.jeesite.modules.dataScreen.web.dto.LoginDto;
import com.jeesite.modules.dataScreen.web.dto.SysUserDto;
import com.jeesite.modules.dataScreen.web.dto.SysUserPageSearchDto;
import com.jeesite.modules.dataScreen.web.vo.LoginVo;
import com.jeesite.modules.dataScreen.web.vo.SysUserPageVo;
import com.jeesite.modules.dataScreen.web.vo.SysUserVo;

import java.util.List;

/**
 * 系统用户(SysUser)表服务接口
 *
 * @author makejava
 * @since 2024-09-24 15:29:55
 */
public interface SysUserService {


    LoginVo login(LoginDto dto);

    /**
     * 重置密码
     *
     * @param dto 用户数据
     * @return 新密码
     */
    String resetPassword(JSONObject dto);

    void freeze(Integer userId);
    void undoFreeze(Integer userId);

    List<SysUserPageVo> list(SysUserPageSearchDto dto);

    SysUserVo detail(Integer userId);

    void update(SysUserDto dto);

    void delete(Integer userId);
}

